// 代码索引 3-12-1-1
#include <iostream>
#include <Eigen/Dense>

using namespace std;
using namespace Eigen;

int main()
{
    Matrix<int, 3, 4, ColMajor> Acolmajor;
    Acolmajor << 8, 2, 2, 9,
                 9, 1, 4, 4,
                 3, 5, 4, 5;
    cout << "The matrix A:" << endl;
    cout << Acolmajor << endl << endl; 
    
    cout << "In memory (column-major):" << endl;
    for (int i = 0; i < Acolmajor.size(); i++)
    cout << *(Acolmajor.data() + i) << "  ";
    cout << endl << endl;
    
    Matrix<int, 3, 4, RowMajor> Arowmajor = Acolmajor;
    cout << "In memory (row-major):" << endl;
    for (int i = 0; i < Arowmajor.size(); i++)
    cout << *(Arowmajor.data() + i) << "  ";
    cout << endl;

    return 0;
}